<#-----------------------------------------------------------------
 -- 时间控件datetime和date
 -- 参数：
 --		name 时间控件name
 --     textId 时间控件的输入框id，如果为空则使用name做id
 -- 	value 时间值
 --		options 校验选项
 --		before 前置时间校验
 --		after 后置时间校验
 ----------------------------------------------------------------->
<#macro datetime name textId="" value="" options="" before="" after="" width="172" disabled=false  callback="datatimecallback">
	<#if textId == ""><#local textId = name /></#if>
	<input type="text" id="${textId}" name="${name}" value="${value!}" style="width:${width}px"
			class="easyui-validatebox" data-options="${options}" <#if disabled==true>disabled</#if> />
	
	<#if disabled != true>
	<script>
	$(document).ready(function(){
	    /* // when id 
	    var id = "${name}".replace(/[\[\]]/g, '_'); */
	    
		if ("${before}" != "" && $("#${before}").length > 0) {
			var t = $("#${before}").val();
			$("input[id='${textId}']").attr("validType", "before['#${before}']");
		}
		if ("${after}" != "" && $("#${after}").length > 0) {
			var t = $("#${after}").val();
			$("input[id='${textId}']").attr("validType", "after['#${after}']");
		}
		
		var buttons = $.extend([], $.fn.datebox.defaults.buttons);
		buttons.splice(1, 2, {
			text: '清空',
			handler: function(target){
				$("input[id='${textId}']").datetimebox('clear');
				$("input[id='${textId}']").val('');
			}
		});
		
		// 绑定输入框的点击事件，弹出树形字典窗口
		$("input[id='${textId}']").datetimebox({
			editable : false,
			formatter: function(date) {
				return date.toTimeString();
			},
			parser : function(s) {
				s = s.replace(/\-/g, "/");
				var t = Date.parse(s);
				if (!isNaN(t)){
					return new Date(t);
				} else {
					return new Date();
				}
			},
			onSelect : function(date) {
				$(this).val(date.toTimeString());
				if ("${before}" != "" && $("#${before}").length > 0) {
					$("#${before}").datetimebox("validate");
				}
				if ("${after}" != "" && $("#${after}").length > 0) {
					$("#${after}").datetimebox("validate");
				}
			},
			onChange: function(newValue) {
				eval(${callback}).call(this,newValue,"${textId}");
			}
		});
	});
	
	function datatimecallback(date){
		
	}
	</script>
	</#if>
</#macro>

<#macro date name textId="" value="" options="" before="" after="" width="172" class="" callback="" disabled=false>
	<#if textId == ""><#local textId = name /></#if>
	<input type="text" id="${textId}" name="${name}" value="${value!}" style="width:${width}px"
			class="easyui-validatebox ${class}" data-options="${options}" <#if disabled==true>disabled</#if> />
	
	<#if disabled != true>
	<script>
	$(document).ready(function(){
		if ("${before}" != "" && $("#${before}").length > 0) {
			$("input[id='${textId}']").attr("validType", "before['#${before}']");
		}
		if ("${after}" != "" && $("#${after}").length > 0) {
			$("input[id='${textId}']").attr("validType", "after['#${after}']");
		}
		var buttons = $.extend([], $.fn.datebox.defaults.buttons);
		buttons.splice(1, 0, {
			text: '清空',
			handler: function(target){
				$("input[id='${textId}']").datebox('clear');
				$("input[id='${textId}']").val('');
			}
		});
		
		// 绑定输入框的点击事件，弹出树形字典窗口
		// panelHeight:170,
		$("input[id='${textId}']").datebox({
			editable : false,
			buttons: buttons,
			formatter: function(date) {
				var y = date.getFullYear();
				var m = date.getMonth()+1;
				m = m < 10 ? '0' + m : m;
				var d = date.getDate();
				d = d < 10 ? '0' + d : d;
				return y+'-'+m+'-'+d;
			},
			onSelect : function(date) {
				$(this).val(date.toDateString());
				if ("${before}" != "" && $("#${before}").length > 0) {
					$("#${before}").datebox("validate");
				}
				if ("${after}" != "" && $("#${after}").length > 0) {
					$("#${after}").datebox("validate");
				}
				
			},
			onChange:function(newDate,oldDate){
				if("${callback}" != ""){
					eval("${callback}").call(this,newDate,"${textId}");
				}
			}
		});
	});
	</script>
	</#if>
</#macro>

<#-----------------------------------------------------------------
 -- 使用my97datepicker的时间控件
 -- 参数：
 --		name 时间控件name
 --     textId 时间控件的输入框id，如果为空则使用name做id
 -- 	value 时间值
 --		callback 选择后的回调，this在输入框上，参数date是选择后的日期字符串
 ----------------------------------------------------------------->
<#macro datepicker name textId="" value="" callback="" disabled=false>
	<#if textId == ""><#local textId = name /></#if>
	<input type="text" id="${textId}" name="${name}" value="${value!}" style="width:${width}px" <#if disabled==true>disabled</#if>
		  class="Wdate easyui-validatebox ${class}" onClick="WdatePicker({onpicked:function(dp){eval('${callback}').call(this,dp.cal.getNewDateStr());}})" />
	
</#macro>